#!/bin/bash

# 配置部分
APP_DIR="/home/ubuntu/mineru-cli"
SCRIPT_NAME="mineruServer.py"
LOG_FILE="$APP_DIR/server.log"
VENV_NAME="mineru"

# 进入项目目录
cd "$APP_DIR" || { echo "无法进入目录 $APP_DIR"; exit 1; }

# 查找并杀死旧进程
PIDS=$(ps aux | grep "$SCRIPT_NAME" | grep -v "grep" | awk '{print $2}')
if [ -n "$PIDS" ]; then
    echo "正在终止已有进程: $PIDS"
    kill -9 $PIDS > /dev/null 2>&1
fi


# 手动指定 conda 安装路径（通常是 miniconda3 或 anaconda3）
CONDA_BASE="/home/ubuntu/miniconda3"  # 根据你的实际安装路径修改！

# 加载 conda 初始化脚本（适用于 bash）
source "$CONDA_BASE/etc/profile.d/conda.sh"


# 激活 conda 环境
conda activate "$VENV_NAME"

# 启动新的 server.py 实例
echo "启动新的服务..."
/home/ubuntu/miniconda3/envs/mineru/bin/python  "$SCRIPT_NAME" > "$LOG_FILE" 2>&1 &

# 检查是否启动成功
NEW_PID=$(ps aux | grep "$SCRIPT_NAME" | grep -v "grep" | awk '{print $2}')
if [ -n "$NEW_PID" ]; then
    echo "服务已重启，当前 PID: $NEW_PID"
else
    echo "服务启动失败！"
    exit 1
fi

sleep 3
sudo docker restart nginx